package com.gy.hsim.bservice.framework.mapper;

import java.util.List;

import com.gy.hsim.bservice.friendInfo.bean.Friend;
import com.gy.hsim.bservice.friendInfo.bean.FriendShield;
import com.gy.hsim.bservice.friendInfo.bean.QueryFriendReq;
import com.gy.hsim.bservice.message.bean.Message;

/**
 * 
 * @ClassName: FriendInfoMapper 
 * @Description: 好友信息DAO接口
 * @author Lee 
 * @date 2015-1-13 下午5:54:30
 */
public interface FriendInfoMapper {
	
	public List<Friend> query1(QueryFriendReq req) throws Exception;
	
	public List<Friend> query2(QueryFriendReq req) throws Exception;
	
	/**根据用户ID返回好友ID和好友备注名 David 2015-07-13 */
	public List<Friend> query3(QueryFriendReq req) throws Exception;
	public List<Friend> query31(QueryFriendReq req) throws Exception;
	/**保存消息 David save message*/
	public boolean insertMessage(Message message)throws Exception;
	/**保存推送消息 David save message*/
	public boolean insertPushMessage(Message message)throws Exception;
	/**保存群发消息 David save message*/
	public boolean insertGroupMessage(Message message)throws Exception;
		
	/** 根据用户ID和好友ID返回两者是否是好友 David 2015-07-13 */
	public int query4(QueryFriendReq req) throws Exception;
	
	public Friend queryFriendRemark1(QueryFriendReq req) throws Exception;
	
	public Friend queryFriendRemark2(QueryFriendReq req) throws Exception;
	
	public int queryFriendVerify(QueryFriendReq req) throws Exception;
	
	public List<Friend> queryWhoAddMeList(QueryFriendReq req) throws Exception;
	
	public boolean insert(QueryFriendReq req) throws Exception;
	
	public boolean update(QueryFriendReq req) throws Exception;
	
	public boolean delete(QueryFriendReq req) throws Exception;
	
	public List<Friend> queryFriendRel(QueryFriendReq req) throws Exception;
	
	public boolean shieldFriendMsg1(QueryFriendReq data) throws Exception;
	
	public boolean shieldFriendMsg2(QueryFriendReq data) throws Exception;
	
	public boolean updateFriendNickName1(QueryFriendReq data) throws Exception;
	
	public boolean updateFriendNickName2(QueryFriendReq data) throws Exception;
	
	
	public List<FriendShield> queryShieldFriendMsg1(QueryFriendReq data) throws Exception;
	
	public List<FriendShield> queryShieldFriendMsg2(QueryFriendReq data) throws Exception;
	
	//查询用户中心数据中与用户有关联的好友
	public List<Friend> queryUcRelFriend(String accountId) throws Exception;
	
}
